<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>Modélisation_environnement_forestier Documentation:  Fichier source de XYGrid.h</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Généré par Doxygen 1.7.1 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Page&nbsp;principale</span></a></li>
      <li><a href="annotated.html"><span>Classes</span></a></li>
      <li class="current"><a href="files.html"><span>Fichiers</span></a></li>
    </ul>
  </div>
  <div class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>Liste&nbsp;des&nbsp;fichiers</span></a></li>
      <li><a href="globals.html"><span>Membres&nbsp;de&nbsp;fichier</span></a></li>
    </ul>
  </div>
<div class="header">
  <div class="headertitle">
<h1>XYGrid.h</h1>  </div>
</div>
<div class="contents">
<a href="_x_y_grid_8h.html">Aller à la documentation de ce fichier.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="preprocessor">#ifndef XYGRID_H</span>
<a name="l00002"></a>00002 <span class="preprocessor"></span><span class="preprocessor">#define XYGRID_H</span>
<a name="l00003"></a>00003 <span class="preprocessor"></span>
<a name="l00009"></a>00009 <span class="preprocessor">#include &quot;<a class="code" href="_grid_frame_8h.html" title="Fichier contenant la déclaration de la classe GridFrame.">GridFrame.h</a>&quot;</span>
<a name="l00010"></a>00010 
<a name="l00011"></a><a class="code" href="class_x_y_grid.html">00011</a> <span class="keyword">class </span><a class="code" href="class_x_y_grid.html">XYGrid</a>
<a name="l00012"></a>00012 {
<a name="l00013"></a>00013         <span class="comment">/* \class XYGrid</span>
<a name="l00014"></a>00014 <span class="comment">         * \brief Cette classe représente une grille régulière selon xOy qui va découper le nuage de point initial en plusieurs sous-nuages. Un sous-nuage équivaut à une case de cette grille.</span>
<a name="l00015"></a>00015 <span class="comment">         */</span>
<a name="l00016"></a><a class="code" href="class_x_y_grid.html#a3f9136ce42b61fb3018289f5fb878926">00016</a>         <span class="keyword">private</span> :
<a name="l00017"></a><a class="code" href="class_x_y_grid.html#a7b644815c8d6c806423e82aacc580bd5">00017</a>         
<a name="l00018"></a><a class="code" href="class_x_y_grid.html#a6c6491545a837a27bbf384743b544025">00018</a>         <a class="code" href="class_point.html">Point</a> <a class="code" href="class_x_y_grid.html#a3f9136ce42b61fb3018289f5fb878926">bot</a>;                                                      
<a name="l00019"></a><a class="code" href="class_x_y_grid.html#a95baa9275410fd7733f878d1cc4388b9">00019</a>         <a class="code" href="class_point.html">Point</a> <a class="code" href="class_x_y_grid.html#a7b644815c8d6c806423e82aacc580bd5">top</a>;                                                      
<a name="l00020"></a><a class="code" href="class_x_y_grid.html#a007cb15f8fd4a558501544e7188eb1a1">00020</a>         <span class="keywordtype">int</span> <a class="code" href="class_x_y_grid.html#a6c6491545a837a27bbf384743b544025">nbFrameX</a>;                                           
<a name="l00021"></a><a class="code" href="class_x_y_grid.html#a1c28eaa5d0e3ef84a8ced432087cd1b0">00021</a>         <span class="keywordtype">int</span> <a class="code" href="class_x_y_grid.html#a95baa9275410fd7733f878d1cc4388b9">nbFrameY</a>;                                           
<a name="l00022"></a><a class="code" href="class_x_y_grid.html#ae3db76746f2a94e0e74b363e2d4ae1cf">00022</a>         <span class="keywordtype">float</span> <a class="code" href="class_x_y_grid.html#a007cb15f8fd4a558501544e7188eb1a1">frameWidth</a>;                                       
<a name="l00023"></a>00023         <span class="keywordtype">float</span> <a class="code" href="class_x_y_grid.html#a1c28eaa5d0e3ef84a8ced432087cd1b0">frameHeight</a>;                                      
<a name="l00024"></a>00024         vector&lt; vector&lt;GridFrame&gt; &gt; <a class="code" href="class_x_y_grid.html#ae3db76746f2a94e0e74b363e2d4ae1cf">data</a>;       
<a name="l00026"></a>00026         <span class="keyword">public</span> :
<a name="l00027"></a>00027         
<a name="l00033"></a>00033         <a class="code" href="class_x_y_grid.html#a1705e992ed07d64669aa0cb9edbeea0b" title="Constructeur de la classe XYGrid.">XYGrid</a>();
<a name="l00034"></a>00034         
<a name="l00048"></a>00048         <a class="code" href="class_x_y_grid.html#a1705e992ed07d64669aa0cb9edbeea0b" title="Constructeur de la classe XYGrid.">XYGrid</a>( <a class="code" href="class_point_cloud.html">PointCloud</a> _p, <span class="keywordtype">float</span> _xMin, <span class="keywordtype">float</span> _yMin, <span class="keywordtype">float</span> _xMax, <span class="keywordtype">float</span> _yMax, <span class="keywordtype">int</span> _resX, <span class="keywordtype">int</span> _resY );
<a name="l00049"></a>00049         
<a name="l00064"></a>00064         <span class="keywordtype">void</span> <a class="code" href="class_x_y_grid.html#aff822b8406bb31e10ba21d9afd5ddf0c" title="Méthode qui crée une grille régulière à partir d&amp;#39;un nuage de point déjà existant.">getGridFromCloud</a>( <a class="code" href="class_point_cloud.html">PointCloud</a> _p, <span class="keywordtype">float</span> _xMin, <span class="keywordtype">float</span> _yMin, <span class="keywordtype">float</span> _xMax, <span class="keywordtype">float</span> _yMax, <span class="keywordtype">int</span> _resX, <span class="keywordtype">int</span> _resY );
<a name="l00065"></a>00065         
<a name="l00073"></a>00073         <span class="keywordtype">int</span> <a class="code" href="class_x_y_grid.html#acc56f8d3a408d24d018824fa17d407b4" title="Accesseur de la classe XYGrid.">getNbFrameX</a> ();
<a name="l00074"></a>00074         
<a name="l00082"></a>00082         <span class="keywordtype">int</span> <a class="code" href="class_x_y_grid.html#a7d3893c34bcfcc22509d557d028d7783" title="Accesseur de la classe XYGrid.">getNbFrameY</a> ();
<a name="l00083"></a>00083 
<a name="l00091"></a>00091         <span class="keywordtype">float</span> <a class="code" href="class_x_y_grid.html#ab03db06c5c365238c82a2e1d0bb84dfe" title="Accesseur de la classe XYGrid.">getFrameWidth</a> ();
<a name="l00092"></a>00092 
<a name="l00100"></a>00100         <span class="keywordtype">float</span> <a class="code" href="class_x_y_grid.html#a4d9ab5e6c215b479d29a9182d419ded9" title="Accesseur de la classe XYGrid.">getFrameHeight</a> ();
<a name="l00101"></a>00101         
<a name="l00109"></a>00109         <span class="keywordtype">int</span> <a class="code" href="class_x_y_grid.html#a89dcc57d86b1a95d1533a5fce2fe1e65" title="Accesseur de la classe XYGrid : donne la taille du nuage de points de la case (_i, _j).x.">getSizeOfFrameCloud</a> ( <span class="keywordtype">int</span> _i, <span class="keywordtype">int</span> _j );
<a name="l00110"></a>00110                         
<a name="l00119"></a>00119         <span class="keywordtype">void</span> <a class="code" href="class_x_y_grid.html#a81ffd3b2e39cefc829c6a12412265821" title="Modificateur de la classe XYGrid.">setNbFrameX</a> ( <span class="keywordtype">int</span> _nbFrame );
<a name="l00120"></a>00120         
<a name="l00129"></a>00129         <span class="keywordtype">void</span> <a class="code" href="class_x_y_grid.html#ac2ceb2d2a62af59ab618290bc2184243" title="Modificateur de la classe XYGrid.">setNbFrameY</a> ( <span class="keywordtype">int</span> _nbFrame );
<a name="l00130"></a>00130         
<a name="l00138"></a>00138         <span class="keywordtype">void</span> <a class="code" href="class_x_y_grid.html#a2d2d3098aca90bcc2869e9380578d834" title="Affiche la grille.">displayGrid</a> ();
<a name="l00139"></a>00139         
<a name="l00149"></a>00149         <span class="keywordtype">void</span> <a class="code" href="class_x_y_grid.html#a2d2d3098aca90bcc2869e9380578d834" title="Affiche la grille.">displayGrid</a>( <span class="keywordtype">float</span> _z );
<a name="l00150"></a>00150         
<a name="l00160"></a>00160         <span class="keywordtype">void</span> <a class="code" href="class_x_y_grid.html#a571f7c99b448b63eed0077d3ea5b981f" title="Affiche le nuage de point de la case _i, _j de la grille.">displayIJCloud</a> ( <span class="keywordtype">int</span> _i, <span class="keywordtype">int</span> _j );
<a name="l00161"></a>00161         
<a name="l00172"></a>00172         <span class="keywordtype">void</span> <a class="code" href="class_x_y_grid.html#a571f7c99b448b63eed0077d3ea5b981f" title="Affiche le nuage de point de la case _i, _j de la grille.">displayIJCloud</a> ( <span class="keywordtype">int</span> _i, <span class="keywordtype">int</span> _j, <span class="keywordtype">float</span> _z );
<a name="l00173"></a>00173         
<a name="l00187"></a>00187         <span class="keywordtype">void</span> <a class="code" href="class_x_y_grid.html#a571f7c99b448b63eed0077d3ea5b981f" title="Affiche le nuage de point de la case _i, _j de la grille.">displayIJCloud</a> ( <span class="keywordtype">int</span> _i, <span class="keywordtype">int</span> _j, <span class="keywordtype">float</span> _z, <span class="keywordtype">float</span> _r, <span class="keywordtype">float</span> _g, <span class="keywordtype">float</span> _b );
<a name="l00188"></a>00188         
<a name="l00201"></a>00201         <span class="keywordtype">void</span> <a class="code" href="class_x_y_grid.html#a5c9e8eb5a93c1e28c12b8e17c3263b81" title="Seuille le nuage de points d&amp;#39;une case de la grille selon la hauteur. Méthode essentiellement util...">keepPointsBetween</a>(<span class="keywordtype">int</span> _i, <span class="keywordtype">int</span> _j, <span class="keywordtype">float</span> _zMin, <span class="keywordtype">float</span> _zMax);
<a name="l00202"></a>00202         
<a name="l00213"></a>00213         <a class="code" href="class_point.html">Point</a> <a class="code" href="class_x_y_grid.html#a573dfab5dcaa9c8fd0d4b3d35f1dd246" title="Accede au point inferieur gauche d&amp;#39;une case de la grille.">getFrameBotPoint</a> ( <span class="keywordtype">int</span> _i, <span class="keywordtype">int</span> _j );
<a name="l00214"></a>00214         
<a name="l00225"></a>00225         <a class="code" href="class_point.html">Point</a> <a class="code" href="class_x_y_grid.html#acc114da3b66f19291ef8ae9701c0e119" title="Accede au point superieur droit d&amp;#39;une case de la grille.">getFrameTopPoint</a> ( <span class="keywordtype">int</span> _i, <span class="keywordtype">int</span> _j );
<a name="l00226"></a>00226         
<a name="l00238"></a>00238         <span class="keywordtype">void</span> <a class="code" href="class_x_y_grid.html#ab4867e2ad23cf17b59d03cb587b7c11d" title="Récupère l&amp;#39;ensemble des cercles à partir du nuage de points de la case (i,j).">getFrameCircles</a>(vector &lt;Circle&gt; &amp; _tabCircles, <span class="keywordtype">int</span> _i, <span class="keywordtype">int</span> _j);
<a name="l00239"></a>00239 
<a name="l00252"></a>00252         <span class="keywordtype">void</span> <a class="code" href="class_x_y_grid.html#ab4867e2ad23cf17b59d03cb587b7c11d" title="Récupère l&amp;#39;ensemble des cercles à partir du nuage de points de la case (i,j).">getFrameCircles</a>(<a class="code" href="class_hough_space.html">HoughSpace</a> &amp; _hs, <span class="keywordtype">float</span> _rMax, <span class="keywordtype">int</span> _i, <span class="keywordtype">int</span> _j);
<a name="l00253"></a>00253 
<a name="l00267"></a>00267         <span class="keywordtype">void</span> <a class="code" href="class_x_y_grid.html#ab4867e2ad23cf17b59d03cb587b7c11d" title="Récupère l&amp;#39;ensemble des cercles à partir du nuage de points de la case (i,j).">getFrameCircles</a>(<a class="code" href="class_hough_space.html">HoughSpace</a> &amp; _hs, <span class="keywordtype">float</span> _rMax, <span class="keywordtype">int</span> _i, <span class="keywordtype">int</span> _j, <span class="keywordtype">int</span> _coef);
<a name="l00268"></a>00268         
<a name="l00278"></a>00278         <span class="keywordtype">void</span> <a class="code" href="class_x_y_grid.html#a42f6c90ea080bccdf9bce74f40c0a429" title="Récupère l&amp;#39;ensemble des cercles à partir du nuage de points de toutes les cases de la grille...">getAllCircles</a>( vector &lt;Circle&gt; &amp;_tabCircles );
<a name="l00279"></a>00279 
<a name="l00290"></a>00290         <span class="keywordtype">void</span> <a class="code" href="class_x_y_grid.html#a42f6c90ea080bccdf9bce74f40c0a429" title="Récupère l&amp;#39;ensemble des cercles à partir du nuage de points de toutes les cases de la grille...">getAllCircles</a>(<a class="code" href="class_hough_space.html">HoughSpace</a> &amp; _hs, <span class="keywordtype">float</span> _rMax);
<a name="l00291"></a>00291         
<a name="l00302"></a>00302         <span class="keywordtype">void</span> <a class="code" href="class_x_y_grid.html#a41d165f1f3ffaf51bb60f8d337977c71" title="Fait une coupe du nuage de points.">keepSlice</a> ( <span class="keywordtype">float</span> _bas, <span class="keywordtype">float</span> _haut );
<a name="l00303"></a>00303         
<a name="l00314"></a>00314         <span class="keywordtype">void</span> <a class="code" href="class_x_y_grid.html#a41d165f1f3ffaf51bb60f8d337977c71" title="Fait une coupe du nuage de points.">keepSlice</a> ( <span class="keywordtype">float</span> _bas, <span class="keywordtype">int</span> _nbPoints );
<a name="l00315"></a>00315         
<a name="l00327"></a>00327         <span class="keywordtype">void</span> <a class="code" href="class_x_y_grid.html#a41d165f1f3ffaf51bb60f8d337977c71" title="Fait une coupe du nuage de points.">keepSlice</a>(<span class="keywordtype">float</span> _bas, <span class="keywordtype">float</span> _haut, <span class="keywordtype">int</span> _nbPoints );
<a name="l00328"></a>00328         
<a name="l00339"></a>00339         <a class="code" href="class_x_y_grid.html">XYGrid</a> <a class="code" href="class_x_y_grid.html#af0369802dec2fc5f6fa788e3a7962ba0" title="Crée une coupe du nuage de points.">getSlice</a> ( <span class="keywordtype">float</span> _bas, <span class="keywordtype">float</span> _haut );
<a name="l00340"></a>00340         
<a name="l00351"></a>00351         <a class="code" href="class_x_y_grid.html">XYGrid</a> <a class="code" href="class_x_y_grid.html#af0369802dec2fc5f6fa788e3a7962ba0" title="Crée une coupe du nuage de points.">getSlice</a> ( <span class="keywordtype">float</span> _bas, <span class="keywordtype">int</span> _nbPoints );
<a name="l00352"></a>00352         
<a name="l00364"></a>00364         <a class="code" href="class_x_y_grid.html">XYGrid</a> <a class="code" href="class_x_y_grid.html#af0369802dec2fc5f6fa788e3a7962ba0" title="Crée une coupe du nuage de points.">getSlice</a> ( <span class="keywordtype">float</span> _bas, <span class="keywordtype">float</span> _haut, <span class="keywordtype">int</span> _nbPoints );
<a name="l00365"></a>00365         
<a name="l00376"></a>00376         <span class="keywordtype">void</span> <a class="code" href="class_x_y_grid.html#aaf69030e786cdc0d2cf912bec93087ce" title="Affiche les coordonnées extremes d&amp;#39;une case.">printFrameBoundingSquare</a> (<span class="keywordtype">int</span> _i, <span class="keywordtype">int</span> _j);
<a name="l00377"></a>00377         
<a name="l00385"></a>00385         <span class="keywordtype">void</span> <a class="code" href="class_x_y_grid.html#a019636dd76c211b278039959a857da37" title="Affiche les coordonnées extremes de la grille.">printBoundingBox</a> ();
<a name="l00386"></a>00386 
<a name="l00392"></a>00392         <span class="keywordtype">void</span> <a class="code" href="class_x_y_grid.html#ab91276a33257d8a9d6905b34644f9da0" title="Trie les points du nuage de la case selon leur altitude.">Sort</a>();
<a name="l00393"></a>00393         
<a name="l00404"></a>00404         <span class="keywordtype">float</span> <a class="code" href="class_x_y_grid.html#a791e15b000e39c523800f4bc79c442df" title="Donne la hauteur du point le plus bas dans une case.">getFrameZMin</a> (<span class="keywordtype">int</span> _i, <span class="keywordtype">int</span> _j );
<a name="l00405"></a>00405 };
<a name="l00406"></a>00406 
<a name="l00407"></a>00407 <span class="preprocessor">#endif</span>
</pre></div></div>
</div>
<hr class="footer"/><address class="footer"><small>Généré le Mon Feb 21 2011 18:18:15 pour Modélisation_environnement_forestier Documentation par&nbsp;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.1 </small></address>
</body>
</html>
